{
    "keyboard_name": "CSTM80",
    "manufacturer": "Drop Inc.",
    "maintainer": "zvecr",
    "processor": "STM32F303",
    "bootloader": "tinyuf2",
    "diode_direction": "COL2ROW",
    "matrix_pins": {
        "cols": ["C15", "C14", "C13", "C12", "C11", "C10", "C9", "C8", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "C0", "D2"],
        "rows": ["B15", "B14", "B13", "B12", "B11", "B10"]
    },
    "usb": {
        "vid": "0x359B",
        "pid": "0x0004",
        "device_version": "1.0.0"
    },
    "eeprom": {
        "driver": "i2c"
    },
    "features": {
        "rgb_matrix": true,
        "bootmagic": true,
        "command": false,
        "console": false,
        "extrakey": true,
        "mousekey": true,
        "nkro": true
    },
    "community_layouts": ["tkl_f13_ansi"],
    "layouts": {
        "LAYOUT_tkl_f13_ansi": {
            "layout": [
                { "matrix": [0,  0], "label":"Esc",   "x":0, "y":0},
                { "matrix": [0,  1], "label":"F1",    "x":1.25, "y":0},
                { "matrix": [0,  2], "label":"F2",    "x":2.25, "y":0},
                { "matrix": [0,  3], "label":"F3",    "x":3.25, "y":0},
                { "matrix": [0,  4], "label":"F4",    "x":4.25, "y":0},
                { "matrix": [0,  5], "label":"F5",    "x":5.5, "y":0},
                { "matrix": [0,  6], "label":"F6",    "x":6.5, "y":0},
                { "matrix": [0,  7], "label":"F7",    "x":7.5, "y":0},
                { "matrix": [0,  8], "label":"F8",    "x":8.5, "y":0},
                { "matrix": [0,  9], "label":"F9",    "x":9.75, "y":0},
                { "matrix": [0, 10], "label":"F10",   "x":10.75, "y":0},
                { "matrix": [0, 11], "label":"F11",   "x":11.75, "y":0},
                { "matrix": [0, 12], "label":"F12",   "x":12.75, "y":0},
                { "matrix": [0, 13], "label":"F13",   "x":14, "y":0},
                { "matrix": [0, 14], "label":"PrtSc", "x":15.25, "y":0},
                { "matrix": [0, 15], "label":"ScrLk", "x":16.25, "y":0},
                { "matrix": [0, 16], "label":"Pause", "x":17.25, "y":0},

                { "matrix": [1,  0], "label":"~",      "x":0, "y":1.25},
                { "matrix": [1,  1], "label":"!",      "x":1, "y":1.25},
                { "matrix": [1,  2], "label":"@",      "x":2, "y":1.25},
                { "matrix": [1,  3], "label":"#",      "x":3, "y":1.25},
                { "matrix": [1,  4], "label":"$",      "x":4, "y":1.25},
                { "matrix": [1,  5], "label":"%",      "x":5, "y":1.25},
                { "matrix": [1,  6], "label":"^",      "x":6, "y":1.25},
                { "matrix": [1,  7], "label":"&",      "x":7, "y":1.25},
                { "matrix": [1,  8], "label":"*",      "x":8, "y":1.25},
                { "matrix": [1,  9], "label":"(",      "x":9, "y":1.25},
                { "matrix": [1, 10], "label":")",      "x":10, "y":1.25},
                { "matrix": [1, 11], "label":"_",      "x":11, "y":1.25},
                { "matrix": [1, 12], "label":"+",      "x":12, "y":1.25},
                { "matrix": [1, 13], "label":"Bksp",   "x":13, "y":1.25, "w":2},
                { "matrix": [1, 14], "label":"Insert", "x":15.25, "y":1.25},
                { "matrix": [1, 15], "label":"Home",   "x":16.25, "y":1.25},
                { "matrix": [1, 16], "label":"Page Up", "x":17.25, "y":1.25},

                { "matrix": [2,  0], "label":"Tab",     "x":0, "y":2.25, "w":1.5},
                { "matrix": [2,  1], "label":"Q",       "x":1.5, "y":2.25},
                { "matrix": [2,  2], "label":"W",       "x":2.5, "y":2.25},
                { "matrix": [2,  3], "label":"E",       "x":3.5, "y":2.25},
                { "matrix": [2,  4], "label":"R",       "x":4.5, "y":2.25},
                { "matrix": [2,  5], "label":"T",       "x":5.5, "y":2.25},
                { "matrix": [2,  6], "label":"Y",       "x":6.5, "y":2.25},
                { "matrix": [2,  7], "label":"U",       "x":7.5, "y":2.25},
                { "matrix": [2,  8], "label":"I",       "x":8.5, "y":2.25},
                { "matrix": [2,  9], "label":"O",       "x":9.5, "y":2.25},
                { "matrix": [2, 10], "label":"P",       "x":10.5, "y":2.25},
                { "matrix": [2, 11], "label":"{",       "x":11.5, "y":2.25},
                { "matrix": [2, 12], "label":"}",       "x":12.5, "y":2.25},
                { "matrix": [2, 13], "label":"|",       "x":13.5, "y":2.25, "w":1.5},
                { "matrix": [2, 14], "label":"Delete",  "x":15.25, "y":2.25},
                { "matrix": [2, 15], "label":"End",     "x":16.25, "y":2.25},
                { "matrix": [2, 16], "label":"Page Dn", "x":17.25, "y":2.25},

                { "matrix": [3,  0], "label":"CapsLk", "x":0, "y":3.25, "w":1.75},
                { "matrix": [3,  1], "label":"A",      "x":1.75, "y":3.25},
                { "matrix": [3,  2], "label":"S",      "x":2.75, "y":3.25},
                { "matrix": [3,  3], "label":"D",      "x":3.75, "y":3.25},
                { "matrix": [3,  4], "label":"F",      "x":4.75, "y":3.25},
                { "matrix": [3,  5], "label":"G",      "x":5.75, "y":3.25},
                { "matrix": [3,  6], "label":"H",      "x":6.75, "y":3.25},
                { "matrix": [3,  7], "label":"J",      "x":7.75, "y":3.25},
                { "matrix": [3,  8], "label":"K",      "x":8.75, "y":3.25},
                { "matrix": [3,  9], "label":"L",      "x":9.75, "y":3.25},
                { "matrix": [3, 10], "label":":",      "x":10.75, "y":3.25},
                { "matrix": [3, 11], "label":"\"",     "x":11.75, "y":3.25},
                { "matrix": [3, 13], "label":"Enter",  "x":12.75, "y":3.25, "w":2.25},

                { "matrix": [4,  0], "label":"Shift",  "x":0, "y":4.25, "w":2.25},
                { "matrix": [4,  1], "label":"Z",      "x":2.25, "y":4.25},
                { "matrix": [4,  2], "label":"X",      "x":3.25, "y":4.25},
                { "matrix": [4,  3], "label":"C",      "x":4.25, "y":4.25},
                { "matrix": [4,  4], "label":"V",      "x":5.25, "y":4.25},
                { "matrix": [4,  5], "label":"B",      "x":6.25, "y":4.25},
                { "matrix": [4,  6], "label":"N",      "x":7.25, "y":4.25},
                { "matrix": [4,  7], "label":"M",      "x":8.25, "y":4.25},
                { "matrix": [4,  8], "label":"<",      "x":9.25, "y":4.25},
                { "matrix": [4,  9], "label":">",      "x":10.25, "y":4.25},
                { "matrix": [4, 10], "label":"?",      "x":11.25, "y":4.25},
                { "matrix": [4, 12], "label":"Shift",  "x":12.25, "y":4.25, "w":2.75},
                { "matrix": [4, 15], "label":"\u2191", "x":16.25, "y":4.25},

                { "matrix": [5,  0], "label":"Ctrl",   "x":0, "y":5.25, "w":1.25},
                { "matrix": [5,  1], "label":"Win",    "x":1.25, "y":5.25, "w":1.25},
                { "matrix": [5,  2], "label":"Alt",    "x":2.5, "y":5.25, "w":1.25},
                { "matrix": [5,  6], "label":" ",      "x":3.75, "y":5.25, "w":6.25},
                { "matrix": [5, 10], "label":"Alt",    "x":10, "y":5.25, "w":1.25},
                { "matrix": [5, 11], "label":"Fn",     "x":11.25, "y":5.25, "w":1.25},
                { "matrix": [5, 12], "label":"Menu",   "x":12.5, "y":5.25, "w":1.25},
                { "matrix": [5, 13], "label":"Ctrl",   "x":13.75, "y":5.25, "w":1.25},
                { "matrix": [5, 14], "label":"\u2190", "x":15.25, "y":5.25},
                { "matrix": [5, 15], "label":"\u2193", "x":16.25, "y":5.25},
                { "matrix": [5, 16], "label":"\u2192", "x":17.25, "y":5.25}
            ]
        }
    },
    "rgb_matrix": {
        "driver": "is31fl3733",
        "sleep": true,
        "animations": {
            "alphas_mods": true,
            "gradient_up_down": true,
            "gradient_left_right": true,
            "breathing": true,
            "band_sat": true,
            "band_val": true,
            "band_pinwheel_sat": true,
            "band_pinwheel_val": true,
            "band_spiral_sat": true,
            "band_spiral_val": true,
            "cycle_all": true,
            "cycle_left_right": true,
            "cycle_up_down": true,
            "cycle_out_in": true,
            "cycle_out_in_dual": true,
            "rainbow_moving_chevron": true,
            "cycle_pinwheel": true,
            "cycle_spiral": true,
            "dual_beacon": true,
            "rainbow_beacon": true,
            "rainbow_pinwheels": true,
            "raindrops": true,
            "jellybean_raindrops": true,
            "hue_breathing": true,
            "hue_pendulum": true,
            "hue_wave": true,
            "pixel_fractal": true,
            "pixel_flow": true,
            "pixel_rain": true,
            "typing_heatmap": true,
            "digital_rain": true,
            "solid_reactive_simple": true,
            "solid_reactive": true,
            "solid_reactive_wide": true,
            "solid_reactive_multiwide": true,
            "solid_reactive_cross": true,
            "solid_reactive_multicross": true,
            "solid_reactive_nexus": true,
            "solid_reactive_multinexus": true,
            "splash": true,
            "multisplash": true,
            "solid_splash": true,
            "solid_multisplash": true
        },
        "layout": [
            { "flags": 4, "matrix": [0,  0], "x":   6, "y":  8 },
            { "flags": 4, "matrix": [0,  1], "x":  21, "y":  8 },
            { "flags": 4, "matrix": [0,  2], "x":  33, "y":  8 },
            { "flags": 4, "matrix": [0,  3], "x":  45, "y":  8 },
            { "flags": 4, "matrix": [0,  4], "x":  57, "y":  8 },
            { "flags": 4, "matrix": [0,  5], "x":  74, "y":  8 },
            { "flags": 4, "matrix": [0,  6], "x":  86, "y":  8 },
            { "flags": 4, "matrix": [0,  7], "x":  98, "y":  8 },
            { "flags": 4, "matrix": [0,  8], "x": 110, "y":  8 },
            { "flags": 4, "matrix": [0,  9], "x": 125, "y":  8 },
            { "flags": 4, "matrix": [0, 10], "x": 137, "y":  8 },
            { "flags": 4, "matrix": [0, 11], "x": 150, "y":  8 },
            { "flags": 4, "matrix": [0, 12], "x": 161, "y":  8 },
            { "flags": 4, "matrix": [0, 13], "x": 176, "y":  8 },
            { "flags": 4, "matrix": [0, 14], "x": 192, "y":  8 },
            { "flags": 4, "matrix": [0, 15], "x": 204, "y":  8 },

            { "flags": 4, "matrix": [1,  0], "x":   6, "y": 21 },
            { "flags": 4, "matrix": [1,  1], "x":  18, "y": 21 },
            { "flags": 4, "matrix": [1,  2], "x":  30, "y": 21 },
            { "flags": 4, "matrix": [1,  3], "x":  43, "y": 21 },
            { "flags": 4, "matrix": [1,  4], "x":  55, "y": 21 },
            { "flags": 4, "matrix": [1,  5], "x":  67, "y": 21 },
            { "flags": 4, "matrix": [1,  6], "x":  79, "y": 21 },
            { "flags": 4, "matrix": [1,  7], "x":  92, "y": 21 },
            { "flags": 4, "matrix": [1,  8], "x": 104, "y": 21 },
            { "flags": 4, "matrix": [1,  9], "x": 116, "y": 21 },
            { "flags": 4, "matrix": [1, 10], "x": 128, "y": 21 },
            { "flags": 4, "matrix": [1, 11], "x": 141, "y": 21 },
            { "flags": 4, "matrix": [1, 12], "x": 153, "y": 21 },
            { "flags": 4, "matrix": [1, 13], "x": 171, "y": 21 },
            { "flags": 4, "matrix": [1, 14], "x": 192, "y": 21 },
            { "flags": 4, "matrix": [1, 15], "x": 204, "y": 21 },

            { "flags": 4, "matrix": [2,  0], "x":   9, "y": 31 },
            { "flags": 4, "matrix": [2,  1], "x":  24, "y": 31 },
            { "flags": 4, "matrix": [2,  2], "x":  36, "y": 31 },
            { "flags": 4, "matrix": [2,  3], "x":  48, "y": 31 },
            { "flags": 4, "matrix": [2,  4], "x":  61, "y": 31 },
            { "flags": 4, "matrix": [2,  5], "x":  73, "y": 31 },
            { "flags": 4, "matrix": [2,  6], "x":  86, "y": 31 },
            { "flags": 4, "matrix": [2,  7], "x":  98, "y": 31 },
            { "flags": 4, "matrix": [2,  8], "x": 110, "y": 31 },
            { "flags": 4, "matrix": [2,  9], "x": 122, "y": 31 },
            { "flags": 4, "matrix": [2, 10], "x": 134, "y": 31 },
            { "flags": 4, "matrix": [2, 11], "x": 146, "y": 31 },
            { "flags": 4, "matrix": [2, 12], "x": 159, "y": 31 },
            { "flags": 4, "matrix": [2, 13], "x": 174, "y": 31 },
            { "flags": 4, "matrix": [2, 14], "x": 192, "y": 31 },
            { "flags": 4, "matrix": [2, 15], "x": 204, "y": 31 },

            { "flags": 4, "matrix": [3,  0], "x":  11, "y": 41 },
            { "flags": 4, "matrix": [3,  1], "x":  27, "y": 41 },
            { "flags": 4, "matrix": [3,  2], "x":  40, "y": 41 },
            { "flags": 4, "matrix": [3,  3], "x":  52, "y": 41 },
            { "flags": 4, "matrix": [3,  4], "x":  64, "y": 41 },
            { "flags": 4, "matrix": [3,  5], "x":  76, "y": 41 },
            { "flags": 4, "matrix": [3,  6], "x":  88, "y": 41 },
            { "flags": 4, "matrix": [3,  7], "x": 100, "y": 41 },
            { "flags": 4, "matrix": [3,  8], "x": 113, "y": 41 },
            { "flags": 4, "matrix": [3,  9], "x": 124, "y": 41 },
            { "flags": 4, "matrix": [3, 10], "x": 137, "y": 41 },
            { "flags": 4, "matrix": [3, 11], "x": 150, "y": 41 },
            { "flags": 4, "matrix": [3, 13], "x": 170, "y": 41 },
            { "flags": 4, "matrix": [0, 16], "x": 217, "y":  8 },
            { "flags": 4, "matrix": [1, 16], "x": 217, "y": 21 },
            { "flags": 4, "matrix": [2, 16], "x": 217, "y": 31 },

            { "flags": 4, "matrix": [4,  0], "x":  13, "y": 51 },
            { "flags": 4, "matrix": [4,  1], "x":  34, "y": 51 },
            { "flags": 4, "matrix": [4,  2], "x":  45, "y": 51 },
            { "flags": 4, "matrix": [4,  3], "x":  58, "y": 51 },
            { "flags": 4, "matrix": [4,  4], "x":  70, "y": 51 },
            { "flags": 4, "matrix": [4,  5], "x":  82, "y": 51 },
            { "flags": 4, "matrix": [4,  6], "x":  94, "y": 51 },
            { "flags": 4, "matrix": [4,  7], "x": 107, "y": 51 },
            { "flags": 4, "matrix": [4,  8], "x": 119, "y": 51 },
            { "flags": 4, "matrix": [4,  9], "x": 131, "y": 51 },
            { "flags": 4, "matrix": [4, 10], "x": 143, "y": 51 },
            { "flags": 4, "matrix": [4, 12], "x": 166, "y": 51 },
            { "flags": 4, "matrix": [4, 15], "x": 204, "y": 51 },

            { "flags": 4, "matrix": [5,  0], "x":   8, "y": 61 },
            { "flags": 4, "matrix": [5,  1], "x":  23, "y": 61 },
            { "flags": 4, "matrix": [5,  2], "x":  38, "y": 61 },
            { "flags": 4, "matrix": [5,  6], "x":  84, "y": 61 },
            { "flags": 4, "matrix": [5, 10], "x": 129, "y": 61 },
            { "flags": 4, "matrix": [5, 11], "x": 144, "y": 61 },
            { "flags": 4, "matrix": [5, 12], "x": 160, "y": 61 },
            { "flags": 4, "matrix": [5, 13], "x": 175, "y": 61 },
            { "flags": 4, "matrix": [5, 14], "x": 192, "y": 61 },
            { "flags": 4, "matrix": [5, 15], "x": 204, "y": 61 },
            { "flags": 4, "matrix": [5, 16], "x": 217, "y": 61 }
        ]
    }
}
